package pojazdy;

import interfaces.Hamujacy;
import interfaces.Jezdzacy;
import interfaces.Przyspieszajacy;

/**
 * Autor: Daniel Michalski
 * Data: 01.08.13
 */

public class Motocykl implements Jezdzacy, Przyspieszajacy, Hamujacy {
    private String marka;
    private int predkosc;
    private boolean czyDwuOsobowy;

    public Motocykl(String marka, int predkosc, boolean czyDwuOsobowy) {
        this.marka = marka;
        this.predkosc = predkosc;
        this.czyDwuOsobowy = czyDwuOsobowy;
    }

    @Override
    public void jedz() {
        System.out.println("Motocykt jedzie z predkoscia " + predkosc + " km/h");
    }

    public void przyspiesz(int oIlePrzyspiesz) {
        this.predkosc += oIlePrzyspiesz;
        System.out.println("Motocykl przyspiesza o " + oIlePrzyspiesz +
                "km/m i jedzie teraz z predkoscia " + predkosc + "km/h");
    }

    public void hamuj() {
        System.out.println("Rower hamuje ");
        for (int i = predkosc; i > 0; i--) {
            this.predkosc = i;
            System.out.println(predkosc + "km/h");
            try {
                Thread.sleep(50);
            } catch (InterruptedException e) {
                System.out.println("Wystapil wyjatek " + e);
            }
        }
        System.out.println("Rower wyhamowal");
    }

    public String getMarka() {
        return marka;
    }

    public void setMarka(String marka) {
        this.marka = marka;
    }

    public int getPredkosc() {
        return predkosc;
    }

    public void setPredkosc(int predkosc) {
        this.predkosc = predkosc;
    }

    public boolean getCzyDwuOsobowy() {
        return czyDwuOsobowy;
    }

    public void setCzyDwuOsobowy(boolean czyDwuOsobowy) {
        this.czyDwuOsobowy = czyDwuOsobowy;
    }

    public String toString() {
        return "Motocykl[" +
                "marka=" + marka +
                ", predkosc=" + predkosc +
                ", czyDwuOsobowy? " + czyDwuOsobowy
                + "]";
    }
}
